The present invention is directed generally to call centers and specifically to the administration of call centers having multiple telephony switches.
FIG. 1 depicts a conventional call center 100 comprising multiple telephony switches 104a-n, or private branch exchanges. Each switch 104a-n in the center 100 includes an automatic call distribution application (or ACD) 108a-n which further includes a router. As used herein, an ACD is software and/or hardware in a telephony switch that provides determined call center functionality, such as determining which skill is best for a selected contact, directing a contact in a queue for the respective switch to a desired agent, handling call prompting, and the like. Examples of ACDs include Definity(trademark) sold by Avaya, Inc. and Magellan(trademark) sold by Nortel. The router 112 manages call routing or load balancing among switches in multi-switch call centers based upon predetermined rules and/or policies, such as queue waiting times. An example of a router is Best Service Routing(trademark) sold by Avaya, Inc. A call center management system or CMS 116 typically runs on an adjunct processor and collects information about each switch from the switch""s corresponding ACD. The CMS enables call center administrators to monitor and manage call centers by generating reports on the statuses of agents, splits/skills, trunks, trunk groups, vectors and vector directory numbers or VDNs. An example of a CMS is Avaya CMS(trademark) and of a toolset providing a graphical user interface for a CMS is Avaya CMS Supervisor(trademark), both sold by Avaya Inc. The collected information is maintained in CMS database 120. As shown in FIG. 1, a single CMS typically serves multiple switches. Multi-switch call centers are gaining in popularity for call centers having agents in multiple geographical locations and for out-sourced call centers, whereby portions of an ACD or set of ACDs are leased to different clients with a concomitant need to enforce privacy and security.
Administration of multi-switch call centers can be labor intensive and therefore expensive. Currently, multi-switch call centers are managed by the CMS using a single-ACD administration and reporting model whose architecture was created for single-switch call centers. To avoid conflicts, agents are assigned to the same split/skill in each of the ACDs, i.e., agents are administered identically across the multiple ACDs. In adding an agent to the call center, for example, an administrator must add the agent separately to each ACD. Likewise in deleting an agent from the call center, the administrator must delete the agent separately from each ACD. Any inconsistency in agent names, login ids, and the like among the ACDs can cause system conflicts. Other synonym types (e.g., aux reason codes, logout reason codes, VDNs, vectors, etc.) require the same type of administration assistance. As will be appreciated, a synonym is a data structure that associates an entity name with an entity id; an entity is a measurable resource, such as an agent, a split/skill, a trunk, a trunk group, a VDN, and a vector; an entity id is an identifier (typically numerical) that corresponds to the entity; and an entity name is a name (e.g., a character string) that corresponds to an entity.
Further problems are encountered in aggregating collected information about the call center. Administrators must aggregate data across several reports when exploring activities across ACDs. For example, to monitor agent performance an administrator must individually generate a report on agent performance for each ACD and manually combine selected contents of the various reports to produce a report for the group of ACDs.
Further problems are encountered in enforcing privacy and security for personnel not only within a company owning a call center but also among multiple companies sharing portions of the call center. Privacy and security typically involve data structures known as permissions, which are rules, policies, or codes restricting CMS read and/or write access. Permissions, like synonyms, are periodically updated and, when updated, must be done for each ACD individually to avoid inconsistencies and system conflicts.
These and other needs are addressed by the various embodiments and configurations of the present invention. Generally, the present invention uses data structures corresponding to a group of switches to cause additions, modifications, and/or other types of queries to be executed for all members of the group.
In one embodiment, a telecommunications system includes at least:
(a) a plurality of telephony switches (e.g., any communication switches such as private branch exchanges or PBXs) that receive incoming contacts and route the contacts to a corresponding agent;
(b) a management system (e.g., CMS) that interfaces with the plurality of telephony switches and maintains for each of the plurality of telephony switches entity-related information (e.g., performance statistics, login ids, names, permissions, etc.) associated with at least one entity. At least two of the plurality of telephony switches define at least a first group of switches (e.g., an ACD group). The management system includes at least one of the following:
(i) a propagator that propagates automatically at least one of additions to, modifications of, and deletions of the entity information to each member of the first group of switches; and
(ii) an aggregator that receives queries for the entity information for the first group of switches and retrieves automatically the entity information associated with each member of the first group of switches and/or with the first group of switches. In one configuration, an ACD attribute is used to distinguish whether an ACD is ungrouped or is a member of a group. As used herein, an xe2x80x9cattributexe2x80x9d refers to a property of a communications switch, such as the feature expert agent selection set including vectoring and EAS(trademark) sold by Avaya, Inc., and a switch grouping such as an ACD group.
By using the concept of the switch or ACD group, the management system can provide the dynamic ability to group switches and manage the resultant groups for a variety of entities. Call center supervisors can have transparent views of their agents regardless of which switch/ACD the agent is logged in to and consolidated agent, split/skill and agent group reporting that aggregates data from multiple ACDs. These capabilities can be provided for realtime and historical reporting, such as through the Centre Vu CMS(trademark) or Centre Vu Supervisor(trademark) (xe2x80x9cCVSxe2x80x9d) interfaces of Avaya, Inc. The customer can view a group of switches as if the switches were a single, virtual switch. The switch group concept is extendible to any ACD resource or entity tracked by CMS, including vectors, VDNs, trunk groups, call work codes, split/skills, trunks, permissions, etc.
In one configuration, the telecommunications system includes a conflict checker that determines when a conflict exists between the addition to, modification of, and deletion of the entity information (which includes permissions) and existing entity information (which also includes permissions). The conflict checker typically first determines when a conflict exists between an entity identifier and/or an entity name and an existing entity identifier and/or entity name. When a conflict is identified by the conflict checker, the propagator does not automatically propagate the addition to, modification of, and deletion of the entity information. As part of the conflict check the management system typically determines when a switch is included in more than one group of switches. Although certain entity conflicts are only examined for certain entities and/or members of the group, other entity conflicts are also examined for members of overlapping groups.
In one configuration, the ACD Group must satisfy two axioms: (1) ACD resource or entity ids are unique among ACD Groups; and (2) entity names are unique within an ACD Group and its ACD members (at least at the time each member A(i) is added to the group). The ACD Group, then, is a set of ACDs in which the ACD resources or entities have been partitioned into xe2x80x9cstripesxe2x80x9d across the member ACDs. For example, agents 2000 through 2500 and split/skills 10 through 20 may be resources on ACD Group X, while agents 2501 through 3000 and split/skills 21 through 30 may be resources on ACD Group Y.
In one illustrative application, an ACD group administration screen is used to create and modify ACD groups. A name is chosen for the group and ACDs are added to it. The ACDs are rearranged at any time. When a new ACD is added to an existing ACD group, the full administration of the group is propagated to the ACD. The CMS administrator defines synonyms for entities (e.g., agents, split/skills, etc.) in an ACD group using the existing CMS dictionary screens, in much the same way as is currently done for a single (ungrouped) ACD. However the synonyms defined for entities in an ACD group are automatically propagated to each ACD in the group. In the same manner, propagation is also used to manage modification of the synonyms and permissions for the entire ACD group. Propagation of ACD administration in this manner is required to fully support xe2x80x9cdrill downxe2x80x9d in CVS reports from the ACD Group level to the ACD level (synonyms are typically identical at the ACD group and ACD level). Therefore, reports are consistent at the ACD group level and the ACD level (and below). Entity conflict resolution (e.g., an agent or split is previously defined for another ACD group) is detected both when a new ACD is added to an ACD group and when a new agent or split is added to an ACD group. Entities within an ACD belong to only one ACD group.
As shown by the foregoing illustration, the ACD group is in effect a dynamic, virtual ACD that crosses the physical boundary of an ACD. Supervisors can run reports that automatically aggregate both real-time and historical data across any set of ACDs in a customer""s call center network and present the data with a consistent set of synonyms. Agents that log in to any one of several ACDs can be tracked with a single report.
The above-described embodiments and configurations are neither complete nor exhaustive. As will be appreciated, other embodiments of the invention are possible utilizing, alone or in combination, one or more of the features set forth above or described in detail below.